package com.time.client.infra.basic.service;

import com.time.client.infra.basic.entity.PostDetail;

import java.util.List;

/**
 * 文章详情统计表，包含阅读量、点赞和收藏数(PostDetails)表服务接口
 *
 * @author HuangQi
 * @since 2025-09-30 16:53:31
 */
public interface PostDetailService {

    /**
     * 通过ID查询单条数据
     *
     * @param id 主键
     * @return 实例对象
     */
    PostDetail queryById(Long id);

    /**
     * 分页查询
     *
     * @param postDetail 筛选条件
     * @return 查询结果
     */
    List<PostDetail> queryByCondition(PostDetail postDetail);

    /**
     * 新增数据
     *
     * @param postDetail 实例对象
     * @return 实例对象
     */
    Integer insert(PostDetail postDetail);

    /**
     * 修改数据
     *
     * @param postDetail 实例对象
     * @return 实例对象
     */
    Integer update(PostDetail postDetail);

    /**
     * 通过主键删除数据
     *
     * @param id 主键
     * @return 是否成功
     */
    boolean deleteById(Long id);

    /**
     * 通过文章ID删除文章详情
     *
     * @param postId 文章id
     * @return 删除行数
     */
    Integer deleteByPostId(Long postId);

    /**
     * 根据文章id查询文章详细信息
     *
     * @param postId 文章id
     * @return 文章详细信息
     */
    PostDetail queryByPostId(Long postId);
}
